#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_txr_algo_dlm_keypoint_demo.h"

class txr_algo_dlm_keypoint_demo : public QMainWindow
{
    Q_OBJECT

public:
    txr_algo_dlm_keypoint_demo(QWidget *parent = Q_NULLPTR);
	
	const static int DLM_CLASS_NUM = 15;

	struct st_test_info
	{
		QString test_dir;
		QString model_path;
		bool save_ng;
		bool save_gd;
		bool save_json;
		bool class_en[DLM_CLASS_NUM] = { 0 };
		int class_th[DLM_CLASS_NUM] = { 0 };
	};
	struct st_img_info
	{
		QString file_name;
		int row;
		int col;
	};

public slots:
	void OnOpenTest();
	void OnOpenModel();
	void OnTest();

	void DlmTest(st_test_info &info);

private:
    Ui::txr_algo_dlm_keypoint_demoClass ui;

	QCheckBox * checkBoxClass[DLM_CLASS_NUM];
	QSpinBox * spinBoxTh[DLM_CLASS_NUM];
};
